package etf.pia.entity;
// Generated Feb 13, 2014 1:21:45 AM by Hibernate Tools 3.6.0


import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.Table;

/**
 * Publikacije generated by hbm2java
 */
@Entity
@Table(name="publikacije"
    ,catalog="pia"
)
public class Publikacije  implements java.io.Serializable {


     private Integer idPoblikacije;
     private String naziv;
     private String opis;
     private byte[] data;
     private String tip;
     private Set<Zaposleni> zaposlenis = new HashSet<Zaposleni>(0);

    public Publikacije() {
    }

	
    public Publikacije(String naziv, String opis, String tip) {
        this.naziv = naziv;
        this.opis = opis;
        this.tip = tip;
    }
    public Publikacije(String naziv, String opis, byte[] data, String tip, Set<Zaposleni> zaposlenis) {
       this.naziv = naziv;
       this.opis = opis;
       this.data = data;
       this.tip = tip;
       this.zaposlenis = zaposlenis;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)

    
    @Column(name="id_poblikacije", unique=true, nullable=false)
    public Integer getIdPoblikacije() {
        return this.idPoblikacije;
    }
    
    public void setIdPoblikacije(Integer idPoblikacije) {
        this.idPoblikacije = idPoblikacije;
    }

    
    @Column(name="naziv", nullable=false, length=45)
    public String getNaziv() {
        return this.naziv;
    }
    
    public void setNaziv(String naziv) {
        this.naziv = naziv;
    }

    
    @Column(name="opis", nullable=false, length=65535)
    public String getOpis() {
        return this.opis;
    }
    
    public void setOpis(String opis) {
        this.opis = opis;
    }

    
    @Column(name="data")
    public byte[] getData() {
        return this.data;
    }
    
    public void setData(byte[] data) {
        this.data = data;
    }

    
    @Column(name="tip", nullable=false, length=100)
    public String getTip() {
        return this.tip;
    }
    
    public void setTip(String tip) {
        this.tip = tip;
    }

@ManyToMany(fetch=FetchType.LAZY)
    @JoinTable(name="zaposleni_has_publikacije", catalog="pia", joinColumns = { 
        @JoinColumn(name="publikacije_id_poblikacije", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="zaposleni_id_korisnik", nullable=false, updatable=false) })
    public Set<Zaposleni> getZaposlenis() {
        return this.zaposlenis;
    }
    
    public void setZaposlenis(Set<Zaposleni> zaposlenis) {
        this.zaposlenis = zaposlenis;
    }




}


